// samsting : this file is auto create.

#ifndef ALIYUN_Rds_Region_DescribeDBInstancesByPerformanceResponse_H_
#define ALIYUN_Rds_Region_DescribeDBInstancesByPerformanceResponse_H_

#include "core/acs_response.h"

namespace aliyun { namespace Rds_Region {

class DescribeDBInstancesByPerformanceResponse : public AcsResponse {
public:
  DescribeDBInstancesByPerformanceResponse();

  class DBInstancePerformance {
    friend class DescribeDBInstancesByPerformanceResponse;
  public:
    const string& GetCPUUsage(void) const;
    const string& GetIOPSUsage(void) const;
    const string& GetDiskUsage(void) const;
    const string& GetSessionUsage(void) const;
    const string& GetDBInstanceId(void) const;
    const string& GetDBInstanceDescription(void) const;
  private:
    string CPUUsage_;
    string IOPSUsage_;
    string DiskUsage_;
    string SessionUsage_;
    string DBInstanceId_;
    string DBInstanceDescription_;
  }; // DBInstancePerformance 

  const std::vector<DBInstancePerformance>& GetItems(void) const;
  int  GetPageNumber(void) const;
  int  GetTotalRecordCount(void) const;
  int  GetPageRecordCount(void) const;

private:
  std::vector<DBInstancePerformance> Items_;
  int    PageNumber_;
  int    TotalRecordCount_;
  int    PageRecordCount_;

protected:
  const char* BaseKey(void);
  void         UnmarshallerMap(std::map<string, string>& response_map);

};

} } // namespace aliyun { namespace Rds_Region {

#endif // #ifndef ALIYUN_Rds_Region_DescribeDBInstancesByPerformanceResponse_H_

// end of file 
